This written description is in the field of migration of client partitions within a system of servers. More particularly, the description relates to using a Hardware Management Console (HMC) to allocate client adapters on the migrating partition to Virtual Input/Output (I/O) Server (VIOS) slots of a destination server.
Many different types of computing systems have attained widespread use around the world. These computing systems include personal computers, servers, mainframes and a wide variety of stand-alone and embedded computing devices. Sprawling client-server systems exist, with applications and information spread across many PC networks, mainframes and minicomputers. In a distributed system connected by networks, a user may access many application programs, databases, network systems, operating systems and mainframe applications. Computers provide individuals and businesses with a host of software applications including word processing, spreadsheet, and accounting. Further, networks enable high speed communication between people in diverse locations by way of e-mail, websites, instant messaging, and web-conferencing.
A common architecture for high performance, single-chip microprocessors is the reduced instruction set computer (RISC) architecture characterized by a small simplified set of frequently used instructions for rapid execution. Thus, in a RISC architecture, a complex instruction comprises a small set of simple instructions that are executed in steps very rapidly. These steps are performed in execution units adapted to execute specific simple instructions. In a superscalar architecture, these execution units typically comprise load/store units, integer Arithmetic/Logic Units, floating point Arithmetic/Logic Units, and Graphical Logic Units that operate in parallel. In a processor architecture, an operating system controls operation of the processor and components peripheral to the processor. Executable application programs are stored in a computer's hard drive. The computer's processor causes application programs to run in response to user inputs.
Thus, in a modern system, a plurality of computers—including servers—are connected together through a network. Each computer may run application programs for performing certain functions. These application programs may include word-processing, e-mail, graphics, document viewing and mark-up, spreadsheet, database, music player, internet browser, photo-shop, games, anti-virus, as well as a host of other application programs too numerous to mention.
Servers are provided to connect a plurality of computers to the Internet or an intranet. Each server may be logically partitioned into a plurality of virtual clients which act and appear to a computer connected to the server as if the virtual client is itself a server. Each virtual client has access to physical storage external to the server through a Storage Area Network (SAN). To provide this access a Power Hypervisor (PHYP) controls access of each virtual client to the physical storage through a Virtual Input/Output Server (VIOS), which is itself a logical partition.
Disks and optical devices attached to a physical adapter connected to the Virtual I/O Server (VIOS) logical partition can be shared by one or more client logical partitions. The VIOS host may be a standard storage subsystem that provides standard Small Computer Service Interface (SCSI)-compliant Logical Unit Numbers (LUN). The VIOS host is capable of exporting a pool of heterogeneous physical storage as a homogeneous pool of block storage in the form of SCSI disks.
In some systems comprising a plurality of servers, with each server capable of hosting a client partition, it is sometimes desirable to transfer (migrate) a running client partition from one server to another. This may be done to balance a load among the servers or for maintenance, for example. A client partition can be migrated only if it meets a set of requirements, one of which allows it to have I/O adapters that are only of the virtual type, for example virtual SCSI or virtual fibre channel adapters, that access physical disk storage through VIOS partitions on a SAN. No physical I/O is allowed. Then for a migration to succeed, each virtual SCSCI or virtual fibre channel adapter associated with the client partition must be assigned to a VIOS host on the destination server that is also capable of the same physical device access. (Note, the migration will fail if this can't be achieved.) Not all adapters can be hosted on every VIOS host. For example, some destination VIOS partitions may not map to the same physical storage as the source VIOS host, while some VIOS hosts may map to the same physical storage, but not have enough available slots. One method to map a set of client adapters to a set of VIOS hosts on the destination server is to try every adapter-host combination in some order until all adapters are resolved (assigned) to a destination VIOS host.